""" Contains dictionaries with optimum classifiers and thresholds """

from sklearn.ensemble import RandomForestClassifier, GradientBoostingClassifier


models_dict = {'S6_is_formal': RandomForestClassifier(n_estimators=100),
               'S6_is_legal': RandomForestClassifier(n_estimators=1000),
               'S6_is_technical': RandomForestClassifier(n_estimators=500),
               'S6_is_aggressive': RandomForestClassifier(n_estimators=100),
               'S8_dummy_Activities': GradientBoostingClassifier(
                n_estimators=100),
               'S8_dummy_Budget': RandomForestClassifier(n_estimators=500),
               'S8_dummy_Evaluation': RandomForestClassifier(
                n_estimators=1000),
               'S8_dummy_ExternalContracts': RandomForestClassifier(
                n_estimators=1000),
               'S8_dummy_InstStruc': RandomForestClassifier(
                n_estimators=1000),
               'S8_dummy_Other': RandomForestClassifier(
                n_estimators=500),
               'S8_dummy_Regulatory': RandomForestClassifier(
                n_estimators=1000),
               'S9_dummy_Academic/Scholarly': RandomForestClassifier(
                n_estimators=500),
               'S9_dummy_Commercial': RandomForestClassifier(
                n_estimators=500),
               'S9_dummy_Impossible to say': RandomForestClassifier(
                n_estimators=1000),
               'S9_dummy_Monitoring': RandomForestClassifier(
                n_estimators=500),
               'S9_dummy_Personal': RandomForestClassifier(n_estimators=500),
               'S10_is_clear': RandomForestClassifier(n_estimators=1000),
               'S10_is_competency_of_institution': RandomForestClassifier(
                n_estimators=100),
               'S10_is_public': RandomForestClassifier(n_estimators=500),
               'S10_is_existant': RandomForestClassifier(n_estimators=100),
               'S11_dummy_Date': RandomForestClassifier(n_estimators=500),
               'S11_dummy_Document': RandomForestClassifier(
                n_estimators=1000),
               'S11_dummy_Institution': RandomForestClassifier(
                n_estimators=1000),
               'S11_dummy_Organization': RandomForestClassifier(
                n_estimators=100),
               'S11_dummy_Person': RandomForestClassifier(n_estimators=1000),
               'S11_dummy_Place': RandomForestClassifier(n_estimators=500)}


opt_thresholds = {'S6_is_formal': 0.21,
               'S6_is_legal': 0.22,
               'S6_is_technical': 0.22,
               'S6_is_aggressive': 0.18,
               'S8_dummy_Activities': 0.32,
               'S8_dummy_Budget': 0.26,
               'S8_dummy_Evaluation': 0.23,
               'S8_dummy_ExternalContracts': 0.31,
               'S8_dummy_InstStruc': 0.32,
               'S8_dummy_Other': 0.04,
               'S8_dummy_Regulatory': 0.20,
               'S9_dummy_Academic/Scholarly': 0.20,
               'S9_dummy_Commercial': 0.17,
               'S9_dummy_Impossible to say': 0.33,
               'S9_dummy_Monitoring': 0.36,
               'S9_dummy_Personal': 0.19,
               'S10_is_clear': 0.50,
               'S10_is_competency_of_institution': 0.50,
               'S10_is_public': 0.50,
               'S10_is_existant': 0.50,
               'S11_dummy_Date': 0.21,
               'S11_dummy_Document': 0.26,
               'S11_dummy_Institution': 0.23,
               'S11_dummy_Organization': 0.20,
               'S11_dummy_Person': 0.23,
               'S11_dummy_Place': 0.21}

